package com.tyk.bookstore.front.order.model.entity;


import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.tyk.bookstore.front.common.core.model.enume.PaymentWay;
import com.tyk.bookstore.front.order.model.emume.CancelReason;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.io.Serial;
import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * @author tyk
 * @description 订单
 */

@Schema(name = "OrderExtra", description = "订单")
@TableName("`order_extra`")
@Data
public class OrderExtraDo implements Serializable {
    @Serial
    private static final long serialVersionUID = 1;

    @Schema(description = "订单ID")
    @TableId("order_id")
    private Long orderId;

    @Schema(description = "收件人姓名")
    @TableField("cnee_name")
    private String cneeName;

    @Schema(description = "收件人电话")
    @TableField("cnee_phone")
    private String cneePhone;

    @Schema(description = "收件人所在区域")
    @TableField("cnee_area_code")
    private Long cneeAreaCode;

    @Schema(description = "收件人地址")
    @TableField("cnee_address")
    private String cneeAddress;

    @Schema(description = "支付方式[0商城余额，1支付宝，2微信]")
    @TableField("payment_way")
    private PaymentWay paymentWay;

    @Schema(description = "支付时间")
    @TableField("payment_time")
    private LocalDateTime paymentTime;

    @Schema(description = "订单取消原因")
    @TableField("cancel_reason")
    private CancelReason cancelReason;

    @Schema(description = "订单取消时间")
    @TableField("cancel_time")
    private LocalDateTime cancelTime;

    @Schema(description = "派单时间")
    @TableField("dispatch_time")
    private LocalDateTime dispatchTime;

    @Schema(description = "签收时间")
    @TableField("signed_time")
    private LocalDateTime signedTime;

}
